home *** CD-ROM | disk | FTP | other *** search
- Fichero de documentación de Powdisk para la revista PC-ACTUAL.
- (c) Emilio David Diaus 1992
-
- ¿COMO SURGIO LA CREACION DE POWDISK?
-
-
- Estaba realizando un programa para disquetes de doble densidad y
- de 3 1/2 " que aumentaba la capacidad de los disquetes de 720Kb a 756Kb y
- que era totalmente compatible con el sistema operativo: Diskcopy, Format,etc,
- que se llamaba y se llama IMAGEJR.
-
- Antes de eso ya había adquirido Turbo Pascal 5.5 y me había interesa-
- do por la OOP (Programación orientada a objetos) porque simplificaba la pro-
- gramación, al principio no sabía muy bien las técnicas pero conforme amplia-
- ba mis conocimientos con la lectura de libros y de revistas me iba inbuyendo
- del espíritu de esta forma de programar e iba prefeccionando mis métodos cada
- vez más, ahora llevo ya 2 años y pico y no tengo practicamente ningun proble-
- ma con esta técnica, en lo que tengo algunos problemas es en la utilización
- de STREAMS (flujos), pero creo que pronto serán subsanados.Una vez que tenga
- Turbo Pascal para Windows y un ordenador más potente podré realizar aplica-
- ciones para este entorno y pasar también las que ya he hecho.También me
- gustaría tener BORLAND 3.0 and Applications FrameWork pero eso es otra his-
- toria porque la programación en C o C++ no la domino ni mucho menos.
-
- Anteriormente había realizado el módulo DISKMAN (DiskManager) para
- utilizar los servicios del BIOS y acceder y realizar toda clase de operacio-
- nes posibles con disquetes.
-
- Al crear IMAGEJR pensé en reunir en un solo programa todas, o si no
- todas, la mayoría de las opciones que se realizan con los disquetes y tam-
- bién añadir otras que no había y que creé mas tarde.
-
- Entonces creé el programa IMAGE que reunía lo que hay ahora en el
- programa POWDISK ,pero se me ocurrió transformarlo en un programa mas fácil
- de utilizar y mas potente.Para ello resolví utilizar el lenguaje Pascal y
- mas concretamente Turbo Pascal 6.0 ya que venía con todo lo necesario para
- realizar un programa con soporte de raton,solapamiento de ventanas, y múlti-
- ples funciones que me facilitarían el trabajo, una vez que resolví unos
- pequeños problemas que tenía con el BIOS este verano me decidí a elaborar
- el programa que os he traido.He utilizado la OOP (Programación Orientada a
- Objetos ) porque permite abstraer y elaborar los programas y resolver proble-
- mas mas facilmente que mediante otros métodos de programación.
- No está el programa totalmente orientado a objetos puesto que he te-
- nido que hacer algunas modificaciones en los módulos o unidades para adaptar-
- los al uso de recubrimientos u overlays, por otra parte he creado algunos
- objetos nuevos que eran necesarios por la propia naturaleza del programa,
- como por ejemplo el indicador de unidad de la parte inferior de la pantalla
- o la línea de entrada de datos del diálogo de petición de clave en encriptar
- y desencriptar disco para que esta no se viera cuando era entrada.
- También hay algunos módulos que se podían simplificar y acortar la
- cantidad de código creando un nuevo objeto que sirviera de patron y crear
- otros que derivaran de este,por ejemplo los módulos o unidades de: Formato,
- F_Rapido,Eliminar,etc. pero quería presentar el programa para que compitiera
- en el premio de las 300,000 ptas y no he tenido bastante tiempo para pulir
- los detalles.
- El programa es altamente mejorable y de hecho y estoy realizando una
- nueva versión.
-
- ¿CON QUE EQUIPO HE REALIZADO EL PROGRAMA?
-
- Ni mas ni menos que con un PC-XT Philips TC-100 de 512kb de memoria,
- y nada mas ni siquiera tengo impresora para haber podido imprimir los textos
- del código fuente ni de los documentos.
- Dada la exigua capacidad de memoria de mi ordenador, para poder
- depurarlo he tenido que hacerlo con la versión con overlays porque si no
- Turbo Debugger que es el programa que he utilizado para depurarlo me decía
- que no había memoria suficiente.
- Por supuesto no he podido compilarlo desde el entorno e incluso
- utilizando el compilador de línea de comandos los últimos dias he tenido que
- cambiar la opción de buffer de enlazado (link buffer /L) para que utilizara
- el disco porque si no no tenía memoria suficiente.
-
- ¿CURIOSIDADES Y DATOS TÉCNICOS DEL PROGRAMA?
-
- Esta puede que sea la parte mas interesante del documento y voy a
- empezar por el principio, por el módulo o la unidad Presenta, en la cual
- he introducido una técnica ideada por mi para conseguir en una tarjeta CGA
- mas colores de los que normalmente se pueden obtener y que solo resulta con
- monitores RGB y no con los actuales de VGA o EGA, el truco está en los
- puertos: con PORT[989]:=255 se activa y con PORT[989]:=0 se desactiva.
- Otra curiosidad es el fichero TSCR.CHR que no intenteis de ninguna
- manera encontrar en Turbo Pascal sino que lo encontrareis en el paquete de
- sofware QUATTRO PRO versión 1.01 (no estoy totalmente seguro de la versión)
- que dispongo, colocándo este mismo y los otros .CHR en el directorio BGI
- dispondremos de 4 fuentes mas (Esto podría ser válido para vuestro apartado
- de trucos ).
- El sistema utilizado para encriptar los discos lo he ideado yo mismo
- se inicaliza una matriz con números aleatorios y se van pasando como en un
- filtro los sectores mediante un "or exclusive" (XOR) así el mismo método
- y procedimiento sirve para encriptar y desencriptar, y después se almacena
- la clave en una parte determinada del sector de arranque también encriptada
- para su posterior comprobación.
- Quizá otro de los módulos mas espectaculares es el de grabar y leer
- las áreas de sistema del disquete, en el programa IMAGE precedente a POWDISK
- hacía un archivo temporal en el disco duro, pero no era necesario porque se
- pueden cargar las áreas de sistema en una matriz en memoria y luego grabarlas
- en el disquete.
- También destaca por su espectacularidad el "salvapantallas" reloj
- analógico que contrasta con lo acostumbrados que estamos a ver relojes
- digitales y que le da un toque de originalidad, está programado para que
- al no pulsar una tecla en 2 minutos aparezca y después restaure la aplica-
- ción.
-
- OTROS PROYECTOS QUE ESTOY REALIZANDO
-
- Además de este programa que os presento he realizado diversos módulos
- en Pascal y C++ orientados a objetos para manejar ventanas y mejorar el
- aspecto de los programas que también pienso mandaros.
-
- Además de todo esto tengo una serie de micro-utilidades que ayudan
- al manejo del D.O.S. como un cambiador de atributos,un movedor de archivos
- por el disco duro o disquete sin tener que copiarlos, un borrador de ficheros
- que borra subdirectorios y los ficheros que contienen a la vez,el "famoso"
- IMAGEJR del que ya os he hablado,un encriptador de ficheros,un busca-ficheros
- en el que se puede especificar buscar por atributos también, y unos pequeños
- programas residentes que son una mera curiosidad como uno que resetea el
- ordenador pulsando una combinación de teclas u otro que muestra las teclas
- Alt,Ctrl,etc. pulsadas.
- Otros programas que estoy pensando realizar son el complemento a
- este otro como es un "Shell" con los que realizar las tareas mas comunes
- con los ficheros y un generador de tests.
-
-
-
-
-
-